/**
 * Copyright (c) 2011 Nokia Corporation.
 */

#ifndef MYGAMEWINDOW_H
#define MYGAMEWINDOW_H

#include <QMouseEvent>
#include "gamewindow.h"
#include "SpriteBatch.h"
#include <QVector2D>
#include "SpriteBatchTester.h"



class MyGameWindow : public GE::GameWindow
{
    Q_OBJECT

public:
    explicit MyGameWindow(QWidget *parent = 0);
    virtual ~MyGameWindow();

public:
    void onSizeChanged(int width, int height);

protected: // From GameWindow
    void onRender();
    void onUpdate(const float frameDelta);
    void onCreate();
    void onDestroy();

protected:
        // Handle to a GL texture for the sprite.
    GLuint texture;

        // Following are set by onSizeChanged event
    int currentWidth;
    int currentHeight;
    float matrixProjection[16];

        // Pointer to abstract "SpriteBatch"-class
    SpriteBatch *spriteBatch;

    SpriteBatchTester tester;

};


#endif // MYGAMEWINDOW_H
